package com.zny.sescore.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.palmdoctor.mb.base.model.RuleFactor;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 评估模型结果
 *
 * @TableName t_assess_model_result
 */
@TableName(value = "t_assess_model_result")
@Data
public class AssessModelResult extends BaseModel<AssessModelResult> {
    /**
     * 结果主键
     */
    @ApiModelProperty("结果主键")
    @TableId(value = "result_id", type = IdType.AUTO)
    private Integer resultId;

    /**
     * 模型主键
     */
    @ApiModelProperty("模型主键")
    private Integer modelId;

    /**
     * 结果等级
     */
    @ApiModelProperty("结果等级")
    private String resultLevel;

    /**
     * 结果得分
     */
    @ApiModelProperty("结果得分")
    private String resultValue;

    /**
     * 结果名称
     */
    @ApiModelProperty("结果名称")
    private String resultName;

    /**
     * 得分规则表达式
     */
    @ApiModelProperty("得分规则表达式")
    private String resultExp;

    /**
     * 结果规则JSON
     */
    @ApiModelProperty("结果规则JSON")
    private String resultExpJson;

    /**
     * 是否默认结果
     */
    @ApiModelProperty("是否默认结果")
    private Boolean defaultResult;

    /**
     * 自定义名称
     */
    @ApiModelProperty("自定义名称")
    private String customName;

    /**
     * 自定义表达式
     */
    @ApiModelProperty("自定义表达式")
    private String customExp;

    /**
     * 自定义计算值
     */
    @TableField(exist = false)
    @ApiModelProperty("自定义计算值")
    private BigDecimal customValue;

    /**
     * 规则列表
     */
    @TableField(exist = false)
    @ApiModelProperty("规则列表")
    private List<RuleFactor> expList;
}